HYPERFLEET-1363 - feat: add Grafana dashboard provisioning to Helm chart - #326
HYPERFLEET-1363 - feat: add Grafana dashboard provisioning to Helm chart#326Ruclo wants to merge 1 commit into
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/values.schema.json`:
- Around line 891-915: Extend the serviceMonitor schema definition with entries
for honorLabels, metricRelabeling, and namespaceSelector, using boolean, array,
and object types respectively to match the values consumed by
servicemonitor.yaml. Keep the existing serviceMonitor properties unchanged and
align each new definition with the corresponding values.yaml/template input.
In `@docs/deployment.md`:
- Around line 448-454: Update the Helm examples in the deployment documentation
so each monitoring variant is a complete, copy-pastable shell command: repeat
the full helm install command for the custom Prometheus selector and alternate
namespace examples, or connect all --set options with valid shell continuations.
In `@docs/logging.md`:
- Line 59: Update the logging documentation’s sampler configuration to use
parentbased_traceidratio instead of parentbased_always_on wherever the default
sampler is described, and keep OTEL_TRACES_SAMPLER_ARG=0.1 as the 10%
root-sampling value. Reconcile the fallback/default argument text in the logging
guide so the examples and explanatory sections consistently describe the same
sampler behavior, including the sections referenced by the existing sampler
settings and fallback descriptions.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 17793209-8027-4e78-939f-01a497925735
📒 Files selected for processing (9)
charts/README.mdcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
Risk Score: 1 —
|
| Signal | Detail | Points |
|---|---|---|
| PR size | 412 lines (>200) | +1 |
| Sensitive paths | none | +0 |
Computed by hyperfleet-risk-scorer
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/templates/servicemonitor.yaml`:
- Line 1: Update the ServiceMonitor example in docs/metrics.md to use the
chart’s actual values path, monitoring.serviceMonitor.enabled, instead of the
obsolete root-level serviceMonitor.enabled. Keep the example aligned with the
ServiceMonitor template symbol .Values.monitoring.serviceMonitor.enabled so
copied configuration will render the resource correctly.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 4e9a30f4-def7-4c2e-add1-2057c6d6e522
📒 Files selected for processing (9)
charts/README.mdcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
🚧 Files skipped from review as they are similar to previous changes (8)
- docs/config.md
- scripts/test-helm.sh
- docs/deployment.md
- charts/README.md
- docs/logging.md
- charts/templates/deployment.yaml
- charts/values.yaml
- charts/values.schema.json
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/logging.md`:
- Around line 392-402: Update the default-sampling statement in the telemetry
documentation to match the runtime fallback in parseSamplingRate and
pkg/telemetry/otel.go: describe ParentBased(TraceIDRatioBased(...)) and clarify
that the configured rate applies to root spans while parent sampling decisions
are respected. Remove the claim that all traces are sampled by default, and
retain parentbased_always_on only as an explicitly configured sampler option.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: f6b88f22-c5a7-4b92-863e-1d95fc23cc4b
📒 Files selected for processing (9)
charts/README.mdcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
🚧 Files skipped from review as they are similar to previous changes (6)
- scripts/test-helm.sh
- charts/templates/deployment.yaml
- charts/README.md
- docs/config.md
- docs/deployment.md
- charts/values.schema.json
874ee73 to
a8af034
Compare
|
@coderabbitai resume |
✅ Action performedReviews resumed. |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/templates/configmap-dashboard.yaml`:
- Around line 1-12: Increment the chart version in Chart.yaml from 1.1.0 to the
next version, keeping the existing parent revision unchanged, then run make
test-helm with Helm installed to verify the chart.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: c336e75d-3489-482a-8e24-9ddf16af41c5
📒 Files selected for processing (10)
charts/README.mdcharts/templates/configmap-dashboard.yamlcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
🚧 Files skipped from review as they are similar to previous changes (7)
- docs/config.md
- scripts/test-helm.sh
- docs/logging.md
- charts/values.schema.json
- charts/values.yaml
- docs/deployment.md
- charts/templates/deployment.yaml
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/Chart.yaml`:
- Line 5: Update the version advertised by the badge in charts/README.md from
1.1.0 to 1.2.0 so it matches the version declared in Chart.yaml.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 250b3fda-01c7-4b9d-8ec3-7a3f21c01090
📒 Files selected for processing (11)
charts/Chart.yamlcharts/README.mdcharts/templates/configmap-dashboard.yamlcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
🚧 Files skipped from review as they are similar to previous changes (8)
- docs/config.md
- scripts/test-helm.sh
- docs/deployment.md
- docs/logging.md
- charts/templates/deployment.yaml
- charts/README.md
- charts/values.schema.json
- charts/values.yaml
| description: HyperFleet API - Cluster Lifecycle Management Service | ||
| type: application | ||
| version: 1.1.0 | ||
| version: 1.2.0 |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Update the chart version in charts/README.md.
charts/Chart.yaml now declares version: 1.2.0, but charts/README.md:1 still advertises Version: 1.1.0. Update the README badge in this change so release documentation matches the chart metadata.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@charts/Chart.yaml` at line 5, Update the version advertised by the badge in
charts/README.md from 1.1.0 to 1.2.0 so it matches the version declared in
Chart.yaml.
Source: Path instructions
…ng section Consolidate all observability configuration under a single monitoring: section for consistency across HyperFleet charts. - Move serviceMonitor and tracing from top-level to monitoring section - Add honorLabels, metricRelabeling, namespaceSelector to serviceMonitor - Add dashboard toggle for future Grafana sidecar provisioning - Default sampler to parentbased_always_on
📝 WalkthroughSummary by CodeRabbit
WalkthroughThe Helm chart version changes to 1.2.0. Monitoring values now nest ServiceMonitor and tracing settings under Estimated code review effort: 3 (Moderate) | ~20 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 11✅ Passed checks (11 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@charts/templates/configmap-dashboard.yaml`:
- Around line 1-12: Update the NOTES.txt template to document the
monitoring.dashboard.enabled value and explain that Grafana dashboard
provisioning requires the grafana_dashboard: "1" sidecar label used by the
hyperfleet-api dashboard ConfigMap.
In `@charts/templates/servicemonitor.yaml`:
- Around line 31-32: Validate monitoring.serviceMonitor.interval and
scrapeTimeout in charts/values.schema.json for supported Prometheus duration
syntax, and enforce that scrapeTimeout is not greater than interval while
allowing equal values. Update charts/templates/servicemonitor.yaml to fail
rendering when either duration is invalid or the timeout exceeds the interval,
rather than emitting values the Prometheus Operator will reject.
In `@charts/values.yaml`:
- Around line 435-453: Prevent the unused root-level serviceMonitor
configuration in values.yaml from silently passing validation: either wire
serviceMonitor.* to the monitoring.serviceMonitor implementation as an explicit
compatibility alias, or reject it with a clear migration error directing users
to monitoring.serviceMonitor.*. Update docs/metrics.md and chart API consumers
to use the supported path.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Central YAML (base), Organization UI (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 3df4aea8-c083-46ab-866c-39740442b53e
📒 Files selected for processing (11)
charts/Chart.yamlcharts/README.mdcharts/templates/configmap-dashboard.yamlcharts/templates/deployment.yamlcharts/templates/servicemonitor.yamlcharts/values.schema.jsoncharts/values.yamldocs/config.mddocs/deployment.mddocs/logging.mdscripts/test-helm.sh
🔗 Linked repositories identified
CodeRabbit considers these linked repositories for cross-repo context during reviews:
openshift-hyperfleet/architecture(manual)openshift-hyperfleet/hyperfleet-api(manual)openshift-hyperfleet/hyperfleet-sentinel(manual)openshift-hyperfleet/hyperfleet-adapter(manual)openshift-hyperfleet/hyperfleet-broker(manual)
Why
Part of HYPERFLEET-1363 — unify observability values under
monitoring:across all HyperFleet component charts and consolidate dashboard provisioning.Changes
serviceMonitorandtracingundermonitoring:sectionmonitoring.dashboard.enabledtoggle for future Grafana sidecar provisioninghonorLabels,metricRelabeling,namespaceSelectorto serviceMonitorparentbased_always_onvalues.schema.jsonto match new pathsdeployment.md,logging.md,config.md) andscripts/test-helm.shTest plan
make test-helmpasses (21 tests)OBSERVABILITY_ENABLED=true